Peer-to-peer (“P2P”) networks are distributed systems with no centralized control where each node in the system uses as well as offers various services. These services are used to support various P2P applications such as voice over IP (“VOIP”), file sharing, video streaming and other applications. Since P2P systems have no centralized control, the routing of data among peers is handled in a distributed manner. Various P2P overlay network routing protocols are used to perform P2P communications such as JXTA, gnutella, FastTrack, Chord, Pastry and others.
While many higher-end wireless devices support P2P applications, there are still many important technical issues to be resolved to allow for more seamless operation of P2P applications within and across heterogeneous networks. For instance, higher-end wireless devices typically can use only VOIP application while accessing a Wi-Fi network. Further, the system architecture of wireless network operators is based typically on a centralized-server architecture. A centralized-server architecture typically does not lend itself to the efficient operation of a P2P overlay network, which is self-organized and distributed. As the demand for P2P applications continues to increase, network operators will be looking for technical advancements to improve the performance and functionality of P2P services on and across their networks.
Skilled artisans will appreciate that elements in the accompanying figures are illustrated for clarity, simplicity and to further help improve understanding of the embodiments, and have not necessarily been drawn to scale.